Incremental Checking of Well-Founded Recursive Speci cations Modulo Axioms
نویسندگان
چکیده
We introduce the notion of well-founded recursive order-sorted equational logic (OS) theories modulo axioms. Such theories de ne functions by well-founded recursion and are inherently terminating. Moreover, for well-founded recursive theories important properties such as con uence and su cient completeness are modular for so-called fair extensions. This enables us to incrementally check these properties for hierarchies of such theories that occur naturally in modular rule-based functional programs. Well-founded recursive OS theories modulo axioms contain only commutativity and associativity-commutativity axioms. In order to support arbitrary combinations of associativity, commutativity and identity axioms, we show how to eliminate identity and (under certain conditions) associativity (without commutativity) axioms by theory transformations in the last part of the paper.
منابع مشابه
Sufficient Completeness Checking with Propositional Tree Automata
Su cient completeness means that enough equations have been speci ed, so that the functions of an equational speci cation are fully de ned on all relevant data. This is important for both debugging and formal reasoning. In this work we extend su cient completeness methods to handle expressive speci cations involving: (i) partiality; (ii) conditional equations; and (iii) deductionmodulo axioms. ...
متن کاملRecursive Types
Vladimir Gapeyev Michael Y. Levin Benjamin C. Pierce Department of Computer and Information Science University of Pennsylvania fvgapeyev,bcpierce,[email protected] Category: Pearls Abstract Algorithms for checking subtyping between recursive types lie at the core of many modern programming language implementations. But the fundamental theory of these algorithms and how they relate to simpl...
متن کاملModel Finding for Recursive Functions in SMT
SMT solvers have recently been extended with techniques for finding models in presence of universally quantified formulas in some restricted fragments. This paper introduces a translation which reduces axioms specifying a large class of recursive functions, including well-founded (terminating) functions, to universally quantified formulas for which these techniques are applicable. An empirical ...
متن کاملAn Optimizing Compiler for Efficient Model Checking
Di erent model checking tools o er a variety of speci cation languages to encode systems. These speci cations are compiled into an intermediate form from which the global automata are derived at veri cation time. Some tools, such as SPIN, provide the user with constructs that can be used to a ect the size of the global automata. In other tools, such as Mur', the user speci es a system directly ...
متن کاملRecursive subtyping revealed
Algorithms for checking subtyping between recursive types lie at the core of many programming language implementations. But the fundamental theory of these algorithms and how they relate to simpler declarative speci cations is not widely understood, due in part to the di culty of the available introductions to the area. This tutorial paper o ers an \end-to-end" introduction to recursive types a...
متن کامل